## modified args
## return ptr
